package com.ruoyi.system.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 参保人员信息对象 insured_persons
 * 
 * @author ruoyi
 * @date 2025-04-13
 */
@ApiModel(value = "InsuredPersons", description = "参保人员信息对象")
public class InsuredPersons extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 序号 */
    private Long id;

    /** 姓名 */
    @ApiModelProperty(name = "姓名")
    private String name;

    /** 身份证号 */
    @ApiModelProperty(name = "身份证号")
    private String idCard;

    /** 性别('0-男', '1-女') */
    @ApiModelProperty(name = "性别('0-男', '1-女')")
    private Long gender;

    /** 年龄 */
    @ApiModelProperty(name = "年龄")
    private Long age;

    /** 联系电话 */
    @ApiModelProperty(name = "联系电话")
    private String phone;

    /** 参保日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty(name = "参保日期")
    private Date insuranceDate;

    /** 个人账户余额 */
    @ApiModelProperty(name = "个人账户余额")
    private BigDecimal personalBalance;

    /** 个人账户编号 */
    @ApiModelProperty(name = "个人账户编号")
    private String personalCode;

    /** 基金账户余额 */
    @ApiModelProperty(name = "基金账户余额")
    private BigDecimal fundBalance;

    /** 基金账户编号 */
    @ApiModelProperty(name = "基金账户编号")
    private String fundCode;

    /** 参保类型 */
    @ApiModelProperty(name = "参保类型")
    private String insuranceType;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }

    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }

    public void setIdCard(String idCard) 
    {
        this.idCard = idCard;
    }

    public String getIdCard() 
    {
        return idCard;
    }

    public void setGender(Long gender) 
    {
        this.gender = gender;
    }

    public Long getGender() 
    {
        return gender;
    }

    public void setAge(Long age) 
    {
        this.age = age;
    }

    public Long getAge() 
    {
        return age;
    }

    public void setPhone(String phone) 
    {
        this.phone = phone;
    }

    public String getPhone() 
    {
        return phone;
    }

    public void setInsuranceDate(Date insuranceDate) 
    {
        this.insuranceDate = insuranceDate;
    }

    public Date getInsuranceDate() 
    {
        return insuranceDate;
    }

    public void setPersonalBalance(BigDecimal personalBalance) 
    {
        this.personalBalance = personalBalance;
    }

    public BigDecimal getPersonalBalance() 
    {
        return personalBalance;
    }

    public void setPersonalCode(String personalCode) 
    {
        this.personalCode = personalCode;
    }

    public String getPersonalCode() 
    {
        return personalCode;
    }

    public void setFundBalance(BigDecimal fundBalance) 
    {
        this.fundBalance = fundBalance;
    }

    public BigDecimal getFundBalance() 
    {
        return fundBalance;
    }

    public void setFundCode(String fundCode) 
    {
        this.fundCode = fundCode;
    }

    public String getFundCode() 
    {
        return fundCode;
    }

    public void setInsuranceType(String insuranceType) 
    {
        this.insuranceType = insuranceType;
    }

    public String getInsuranceType() 
    {
        return insuranceType;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("name", getName())
            .append("idCard", getIdCard())
            .append("gender", getGender())
            .append("age", getAge())
            .append("phone", getPhone())
            .append("insuranceDate", getInsuranceDate())
            .append("personalBalance", getPersonalBalance())
            .append("personalCode", getPersonalCode())
            .append("fundBalance", getFundBalance())
            .append("fundCode", getFundCode())
            .append("insuranceType", getInsuranceType())
            .toString();
    }
}
